home *** CD-ROM | disk | FTP | other *** search
- >Updates
-
- Updates since version 1.00
-
- 1.01 - Bug fixed : during decompression, for every file in the archive almost
- the entire archive was re-read due to a fault in buffering. This made
- unpacking archives from floppy a frustrating experience (I guess my
- hard disk is too fast, I didn't notice the delay. But now the bug is
- fixed I do).
- - Generally improved file buffering.
- - Choice of max. LZW code bits added : 12 to 16 bits available. Old
- archives (13-bit) are ok (obviously). Number of bits also shown in
- info window.
-
- 1.02 - Bug fixed : due to a very tiny mistake, during compression the output
- buffer was flushed after every input file, no matter how large the
- buffer, so the buffer wasn't used to the max.
-
- 1.10 - All main menu options migrated to an 'Impression'-like control window.
- - Added 'structure' storage option, to enable very compact storage of
- directory structure and file information without actual file data.
- - Added 'structure' recreation options, to enable quick looks at archive
- contents without actually unpacking data.
- - Pressing CTRL while dragging a directory to PackDir archives the
- parent of the directory. This is to enable archiving of a disc's root
- dir '$' (which is hard to get into a filer window !).
- - Thoroughly changed the info window. Refer to 'Guide' for details.
- - Removed maximum of 1024 items restriction. No limit to number of items
- in archive (useful when storing an entire harddisc's structure).
-
- 1.11 - Fixed bug : error handling was not ok. E.g. 'Protected disc' while
- packing would try to delete the archive as well, resulting in another
- error, which, in turn, was not handled correctly.
-
- 1.12 - LZW module is now LZWB module. No functional changes, but other SWI
- numbers.
-
- 1.13 - New LZWB (2.01) and FileBuffer (1.05) modules.
- In LZWB a bug was fixed that caused output buffer to overflow by a few
- bytes in some situations. This caused no harm because the input buffer
- follows the output buffer cleanly, but may cause input file corruption
- of a few bytes in very rare situations.
- In FileBuffer a bug was fixed that caused a very long (>1 times the
- output buffer length in compressed terms) uncompressable file to crash
- PackDir with an address exception in the middle of FileCore !!! Very
- unfortunate place to crash !!! This is an important bug fix (it caused
- my IDE harddisc to crash fatally on 10 Sep 1991 !!! Yours too ? I hope
- not !).
- - PackDir does not do FileBuffer_Clear anymore prior to (un)packing.
- It's not really recommended in a multitasking environment, but now,
- when filebuffers are not properly closed by some user of FileBuffer,
- there is a risk of no more buffers error.
-
- 1.14 - New LZWB (2.02) module. Error handling tidied up a bit. Sometimes
- 'Disc full' would not be returned correctly.
-
- 1.15 - New LZWB (2.10) module. Around 20% speedup of both decompression and
- compression code (may turn out to be more on slow media, because of
- reduced latency).
-
- 1.16 - Changed control window title from 'Control' to 'PackDir'.
-
- 1.17 - Bug fixed : resulting files with large-ish uncompressable files in
- them may turn out to be too large. This is because the archive has
- already been extended too far by the trial compression, which was
- not corrected for when closing the archive. I had envisaged this,
- but the code was not right.
-
- 1.18 - Default directory leafname for unarchive is now the leafname of the
- original directory, not the leafname of the archive itself. This
- makes it more convenient to unpack when archives are given a different
- name than the original directory's leafname, because the latter does
- not have to be remembered.
-
- 1.19 - Major rewrite of internals. No change in functionality.
- - !RunImage crunched. Less memory usage and stops people !@#$%^ around
- in my programs without me knowing (well, anybody less than totally
- masochistic or below 'superior genius' (obviously including me) that
- is).
- - Added fancy borders to control window.
-
- 1.20 - Mode 20 and 3D icons made by Hans Steeman added.
-
- 1.21 - Menu items now standard 44 OS units high (was 40)
- - Added my face to the Info window ! How cruel mother nature can be.
-
- 1.22 - New 'Borders' module. SWI errors are now propagated.
- - Changed ESG numbers of special icons from 15 down to 31 down.
-
- 1.23 - Bug fixed : address exception would sometimes occur during unpacking,
- more likely with very large files and/or larger bit-sizes and/or less
- available memory. This was due to LZWB sometimes reading one (unused)
- word beyond the very end of the input file buffer, which, when ending
- on a logical page, caused an address exception. LZWB has been fixed
- and replaced (2.11 now).
- - Forgot to update to '1.23' in info window in a few copies sent out on
- Usenet.
-
- 1.24 - Bug fixed : non-PackDir files with PackdDir filetype no longer hang
- the machine, but result in an error message.
- - Non-PackdDir typed files, when dragged to the iconbar icon, are
- checked, and settyped and accepted if found to be a PackDir archive.
- They used to be rejected.
- - Save window now has a quit icon (before, only dragging to background
- removed it), and '3D' looks.
- - Status handling functions added. Someone deemed it necessary (or
- handy). Hi Les ...!
- - New 'me' (adapts to Yeig too !). Somebody recognize this 'hommage' ?
- It did take some time to get the pose right though ! Even the plaster
- is there ! Obviously not the beauty ...
-
- 1.25 - Teensy weensy bit improved LZWB module (2-3% faster unpacking). Just
- felt like having another squeeze ...
-
- 1.26 - Moved 'me' to seperate window, for a smaller info window. Access via
- 'hidden' button.
- - Bugfix : packing/unpacking a dirtree with no files would give
- 'Division by zero' error.
- - New Borders module, now correctly switches back from menuptr to normal
- pointer in all situations (though not currently relevant to PackDir).
-
- 1.30 - MAJOR speedup ! It's amazing I didn't realize this before. I had built
- in a fast algorithm for to-memory decompression in LZWB, and I'm not
- using it ! Well, actually, I never realized I could, as it needs a
- contiguous memory block, but as PackDir grabs all available memory
- anyway, and is likely to end up with big buffers that can hold all
- the uncompressed data, even for big files, it can be used. PackDir now
- only uses the (slower) file-buffered method for files that cannot be
- unpacked in one go.
- While I was at it, I did some generic speedups of the archiving and
- unarchiving loops, and achieved another useful speedup, notably the
- info window is now totally ignored when it's not opened (opening it
- now actually slows down the processing quite a bit, a factor of 2
- in general !).
- Factors ? Dependant on file-mix and number of files, an average case
- (large number of files, 180-ish, around 300k compressed, tested in
- mode 0 and on RAM disc) shows 25% speedup of archiving (22 seconds
- against 29), and, get ready for this, 55% speedup of unarchiving (i.e.
- more than double (!) the old speed, 11 seconds against 24).
-
- 1.31 - Oops, did a change in 1.30 that caused the sliders not to be updated
- correctly. Fixed.
-
- 1.32 - New FileBuffer module (1.06). Just some exit-condition changes.
-
- 1.33 - New Borders module (1.12). Only tidied up internals. Not
- SWI-compatible with previous versions. To avoid clashes with apps
- using older versions and because of general tidy-up of my entire
- module set, new module name 'ZeriBorders' and new SWI chunk base.
- - New FileBuffer module (1.07). Same comments as for Borders. New name
- is 'ZeriFileBuffer'.
- - Bugfix : PackDir failed to kill LZWB on exit if no other users,
- because of wrong module name ('LZW' instead of 'LZWB').
-
- 1.34 - New LZWB module (2.13). Only tidied up internals. Not SWI-compatible
- with previous versions. To avoid clashes with apps using older
- versions and because of general tidy-up of my entire module set, new
- module name 'ZeriLZWB' and new SWI chunk base.
- - New ZeriFileBuffer module (1.10). Improved efficiency.
- - Memory handling functions now performed by seperate memory management
- module, ZeriMemory (1.00).
-
- 1.35 - Added 'none' compression option. Stores as '12 bit' (to provide
- archive compatibility with old readers, like !SparkFS), but does not
- actually attempt compression.
-
-